#!/bin/bash

# Redes:
REDA="10.9.3.0/26"
REDB="192.168.21.0/24"
REDC="10.4.2.160/30"
REDD="10.4.1.128/25"
REDG="10.9.3.128/25"
REDH="10.4.2.164/30"
REDI="10.9.3.64/27"
REDJ="10.4.2.144/28"
REDK="10.9.3.96/27"
REDL="10.9.2.0/24"
REDM1="172.43.0.64/30"
REDM2="172.43.0.68/30"
REDM3="172.43.0.72/30"
REDM4="172.43.0.76/30"
REDM5="172.43.0.80/30"
REDM6="172.43.0.84/30"
REDQ="10.4.2.128/28"


# Routers:
ROUTER7E1="10.4.1.129" # POR D
ROUTER7E2="10.4.2.130" # POR Q
ROUTER8="10.4.2.131" # POR Q
ROUTER9="10.4.2.132" # POR Q
ROUTER10="10.4.2.133"


# IP Telnet:
TELNETE1="10.4.1.130" # POR D
TELNETE2="10.4.2.129" # POR Q

# Rutas estaticas para Telnet

echo 2 tablee1 >> /etc/iproute2/rt_tables
echo 3 tablee2 >> /etc/iproute2/rt_tables

# Tablas de ruteo por D
ip route add $REDA via $ROUTER7E1 table tablee1 # Red A por R7
ip route add $REDQ via $ROUTER7E1 table tablee1 # Red B por R7
ip route add $REDC via $ROUTER7E1 table tablee1 # Red C por R7
ip route add $REDG via $ROUTER7E1 table tablee1 # Red G por R10
ip route add $REDH via $ROUTER7E1 table tablee1 # Red H por R10
ip route add $REDI via $ROUTER7E1 table tablee1 # Red I por R10
ip route add $REDJ via $ROUTER7E1 table tablee1 # Red J por R10
ip route add $REDK via $ROUTER7E1 table tablee1 # Red K por R10
ip route add $REDL via $ROUTER7E1 table tablee1 # Red L por R10
ip route add $REDB via $ROUTER7E1 table tablee1 # Red M por R10
ip route add $REDM1 via $ROUTER7E1 table tablee1 # Red FR R2-R7 por R7
ip route add $REDM2 via $ROUTER7E1 table tablee1 # Red FR R2-R12 por R7
ip route add $REDM3 via $ROUTER7E1 table tablee1 # Red FR R7-R12 por R7
ip route add $REDM4 via $ROUTER7E1 table tablee1 # Red Int R8-B por R7
ip route add $REDM5 via $ROUTER7E1 table tablee1 # Red Int R11-A por R10
ip route add $REDM6 via $ROUTER7E1 table tablee1 # Red Int A-R18 por R10
ip route add $REDD dev tap321 table tablee1 #E1 CONNECTED


# Tablas de ruteo por E2
ip route add $REDA via $ROUTER7E2 table tablee2 # Red A por R7
ip route add $REDD via $ROUTER7E2 table tablee2 # Red B por R7
ip route add $REDC via $ROUTER7E2 table tablee2 # Red C por R7
ip route add $REDG via $ROUTER8 table tablee2 # Red G por R10
ip route add $REDH via $ROUTER9 table tablee2 # Red H por R10
ip route add $REDI via $ROUTER9 table tablee2 # Red I por R10
ip route add $REDJ via $ROUTER9 table tablee2 # Red J por R10
ip route add $REDK via $ROUTER9 table tablee2 # Red K por R10
ip route add $REDL via $ROUTER9 table tablee2 # Red L por R10
ip route add $REDB via $ROUTER10 table tablee2 # Red M por R10
ip route add $REDM1 via $ROUTER8 table tablee2 # Red FR R2-R7 por R7
ip route add $REDM2 via $ROUTER8 table tablee2 # Red FR R2-R12 por R7
ip route add $REDM3 via $ROUTER8 table tablee2 # Red FR R7-R12 por R7
ip route add $REDM4 via $ROUTER8 table tablee2 # Red Int R8-B por R7
ip route add $REDM5 via $ROUTER8 table tablee2 # Red Int R11-A por R10
ip route add $REDM6 via $ROUTER8 table tablee2 # Red Int A-R18 por R10
ip route add $REDQ dev tap654 table tablee2 #E2 CONNECTED


# LA MAGIA EMPIEZA ACA (?)

ip rule flush

# Agrego las reglas de fabrica
ip rule add table main prio 32766
ip rule add table default prio 32767

# Agrego las reglas del telnet
ip rule add from $TELNETE2 lookup tablee2 prio 1001
ip rule add to $TELNETE2 lookup tablee2 prio 1002
ip rule add from $TELNETE1 lookup tablee1 prio 1003
ip rule add to $TELNETE1 lookup tablee1 prio 1004

ip rule add table tablee1 prio 1101
ip rule add table tablee2 prio 1102

